\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4}{
\section{nih\-:\-:\-Vector$<$ \-T, 2 $>$ \-Struct \-Template \-Reference}
\label{structnih_1_1_vector_3_01_t_00_012_01_4}\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}}
}


{\ttfamily \#include $<$vector.\-h$>$}

\subsection*{\-Public \-Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_ae964137a735ee491d62e6ff067316fb1}{
typedef \-T {\bfseries value\-\_\-type}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_ae964137a735ee491d62e6ff067316fb1}

\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a22788e3c8f6a85d80ff47ad963043921}{
typedef \-T {\bfseries \-Field\-\_\-type}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a22788e3c8f6a85d80ff47ad963043921}

\end{DoxyCompactItemize}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a0d14da0f64ea711e804cad90fcc14859}{\-Vector} ()
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a690d778950f807362930a6731d053031}{\-Vector} (const \-T v)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a6c3a470babc04a06c4e7cae7817fc9c1}{\-Vector} (const \-T $\ast$v)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a583d88096e3a36c4fe55c996a73124f9}{\-Vector} (const \-T v0, const \-T v1)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a6faa6aad92bdedf1d965cea57d9c27a9}{\-Vector} (const \hyperlink{structnih_1_1_vector}{\-Vector}$<$ \-T, 1 $>$ \&v, const \-T v1)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \*
\-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector}{\-Vector} \& \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a5642e3babae06f1cde5779ecb97b918f}{operator=} (const \hyperlink{structnih_1_1_vector}{\-Vector} \&v)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \*
\-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E const \-T \& \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_aa494f7aa68630cbd253c5f950ea4e976}{operator\mbox{[}$\,$\mbox{]}} (const size\-\_\-t i) const 
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \*
\-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \-T \& \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_adec475bd0cddb664605c692867b76bd8}{operator\mbox{[}$\,$\mbox{]}} (const size\-\_\-t i)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E size\-\_\-t \hyperlink{structnih_1_1_vector_3_01_t_00_012_01_4_a054b3ba0ffc424c497deb234fe6a7c7a}{dimension} () const 
\end{DoxyCompactItemize}
\subsection*{\-Public \-Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a5193a1b952438127ffde5019e964907d}{
\-T {\bfseries x} \mbox{[}2\mbox{]}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a5193a1b952438127ffde5019e964907d}

\end{DoxyCompactItemize}
\subsection*{\-Static \-Public \-Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_ae1116de9f3ba6c22e64d50586ad9a39c}{
static const size\-\_\-t {\bfseries k\-Dimension} = 2u}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_ae1116de9f3ba6c22e64d50586ad9a39c}

\end{DoxyCompactItemize}


\subsection{\-Detailed \-Description}
\subsubsection*{template$<$typename T$>$struct nih\-::\-Vector$<$ T, 2 $>$}

\-Abstract linear algebra vector class, templated over type and specialized to dimension 2 

\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a0d14da0f64ea711e804cad90fcc14859}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a0d14da0f64ea711e804cad90fcc14859}
empty constructor \hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a690d778950f807362930a6731d053031}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const \-T}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, explicit\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a690d778950f807362930a6731d053031}
copy constructor


\begin{DoxyParams}{\-Parameters}
{\em v} & input vector \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a6c3a470babc04a06c4e7cae7817fc9c1}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const \-T $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, explicit\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a6c3a470babc04a06c4e7cae7817fc9c1}
copy constructor


\begin{DoxyParams}{\-Parameters}
{\em v} & input array \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a583d88096e3a36c4fe55c996a73124f9}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const \-T}]{v0, }
\item[{const \-T}]{v1}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a583d88096e3a36c4fe55c996a73124f9}
component-\/wise constructor


\begin{DoxyParams}{\-Parameters}
{\em v0} & component 0 \\
\hline
{\em v1} & component 1 \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a6faa6aad92bdedf1d965cea57d9c27a9}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector}$<$ \-T, 1 $>$ \&}]{v, }
\item[{const \-T}]{v1}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a6faa6aad92bdedf1d965cea57d9c27a9}
constructor


\begin{DoxyParams}{\-Parameters}
{\em v} & input 1d vector \\
\hline
{\em v1} & second component \\
\hline
\end{DoxyParams}


\subsection{\-Member \-Function \-Documentation}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a054b3ba0ffc424c497deb234fe6a7c7a}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!dimension@{dimension}}
\index{dimension@{dimension}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{dimension}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E size\-\_\-t {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::dimension (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a054b3ba0ffc424c497deb234fe6a7c7a}
vector dimension \hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_a5642e3babae06f1cde5779ecb97b918f}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!operator=@{operator=}}
\index{operator=@{operator=}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf \-Vector}\& {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::operator= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector}$<$ \-T, 2 $>$ \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_a5642e3babae06f1cde5779ecb97b918f}
assignment operator


\begin{DoxyParams}{\-Parameters}
{\em v} & input vector \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_aa494f7aa68630cbd253c5f950ea4e976}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!operator\mbox{[}$\,$\mbox{]}@{operator[]}}
\index{operator\mbox{[}$\,$\mbox{]}@{operator[]}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{operator[]}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E const \-T\& {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::operator\mbox{[}$\,$\mbox{]} (
\begin{DoxyParamCaption}
\item[{const size\-\_\-t}]{i}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_aa494f7aa68630cbd253c5f950ea4e976}
const indexing operator


\begin{DoxyParams}{\-Parameters}
{\em i} & component index \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_012_01_4_adec475bd0cddb664605c692867b76bd8}{
\index{nih\-::\-Vector$<$ T, 2 $>$@{nih\-::\-Vector$<$ T, 2 $>$}!operator\mbox{[}$\,$\mbox{]}@{operator[]}}
\index{operator\mbox{[}$\,$\mbox{]}@{operator[]}!nih::Vector< T, 2 >@{nih\-::\-Vector$<$ T, 2 $>$}}
\subsubsection[{operator[]}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \-T\& {\bf nih\-::\-Vector}$<$ \-T, 2 $>$\-::operator\mbox{[}$\,$\mbox{]} (
\begin{DoxyParamCaption}
\item[{const size\-\_\-t}]{i}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_012_01_4_adec475bd0cddb664605c692867b76bd8}
indexing operator


\begin{DoxyParams}{\-Parameters}
{\em i} & component index \\
\hline
\end{DoxyParams}


\-The documentation for this struct was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
linalg/\hyperlink{vector_8h}{vector.\-h}\end{DoxyCompactItemize}
